Tcl in AltaVista Forum

نویسنده

  • David Griffin
چکیده

AltaVista Forum is an award-winning collaboration environment based on the open technologies of the World-Wide Web and built on the foundation of the Tcl language [pob]. Using Tcl’s inherent extensibility the AltaVista Forum toolkit provides a simple class/inheritance mechanism, an information manager customized for the data storage needs of collaboration applications, and a growing toolkit for creating asynchronous collaboration applications on the Web. This paper details how Tcl has been employed as the basis of a commercial web-based collaboration environment. While the focus of the paper will be on the design and our use of Tcl in AltaVista Forum 98, we will also touch on how the design has evolved over the past three releases of the product. Selecting the Tcl Language AltaVista Forum (formerly Workgroup Web Forum) is described pretty thoroughly from a functional standpoint in [Chiu]. If all has gone well, we will have released the third version of this product since its debut in 1995: spanning the use of Tcl 7.3 through 7.6 (and looking forward to Tcl 8). (More information can be found at: http://www.altavista.software.digital.com/forum) In late 1994 a small team of engineers in Digital’s Networks group began pursuing two goals: building products which worked within the framework of the then emerging World-Wide Web and building them in a new way which matched the rapid pace of evolution expected in this space. Rapid development, flexibility, and platform independence pointed us towards interpreted languages as a core technology for constructing these new products. Perl, Python, Tcl, and a number of other interpreters were examined and evaluated. Tcl emerged as the tool of choice and in a matter of weeks a toolbox of extensions began to come together along with a flurry of prototypes. The selection of Tcl as a core technology came about as a compromise based on a variety of factors and, to be sure, a bit of cultural pressure within Digital. For example, Perl was arguably more popular and therefore would be more attractive to people who wanted to program in our environment. Python had a very attractive object model and reasonably clean extension mechanism. Tcl was selected because it was a mature (version 7 and still cooking), portable (most UNIX platforms, Windows, and Macintosh), and highly extensible language that possessed a vibrant user community (comp.lang.tcl), an excellent book available in most bookstores [Ousterhout], and (as luck would have it) a commitment of support by a respected engineering company (Sun Microsystems). We’ve been generally happy with our choice. Initial Design Elements Following in the footsteps of Tk (and others) we created the concept of the AltaVista Forum “Toolkit”: a custom scripting language for developing a class of web-based collaborative applications. Using Tcl as the core language we extended it with both public domain and privately developed code. The goal was to develop a language that was sufficiently powerful so that simple collaborative applications could be scripted in just a few pages, but would also allow for the development of sophisticated and customizable applications as well. We also wanted to provide a language which would execute identically on multiple target platforms (specifically UNIX and Windows NT) while not excluding the ability to use Tcl to its fullest extent (we don’t disable any commands, including exec),

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Callus Induction and Shoot Regeneration Using Indole Acetic Acid and N-Isopentenylamino Purine Combinations and Two Types of Explant in Tomato

Effects of different concentrations of IAA (0, 0.3, 0.6 mg/l) and 2ip (0, 0.3, 0.6, 0.9, 1.2 mg/l) and their combinations on callus induction and shoot regeneration of hypocotyl and its thin cell layer (TCL) explants in tomato was studied. Explants were prepared from hypocotyls of seedlings in the aseptic condition. Hypocotyl segments were more efficient than TCL explants for callus induction a...

متن کامل

Building Collaboration Software for the Internet

have changed the scope of network computing. As the Internet user population has grown, so has the demand for better ways to collaborate on the Internet. Some examples include the ability to share and discuss issues of common interest, coauthor documents, and track project status. Although today’s WWW is ideal for publishing information, it requires considerable customized programming to suppor...

متن کامل

A Temporal Comparison of AltaVista Web

AltaVista, are essential tools in the quest to locate online information. This article reports research that used transaction log analysis to examine the characteristics and changes in AltaVista Web searching that occurred from 1998 to 2002. The research questions we examined are (1) What are the changes in AltaVista Web searching from 1998 to 2002? (2) What are the current characteristics of A...

متن کامل

PtTcl: Using Tcl with Pthreads

Tcl is not thread-safe. If two or more threads attempt to use Tcl at the same time, internal data structures can be corrupted and the program can crash. This is true even if the threads are using separate Tcl interpreters. PtTcl is a modi cation to the Tcl core that makes Tcl safe to use with POSIX threads. With PtTcl, each thread can create and use its own Tcl interpreters that will not interf...

متن کامل

When is an object not an object?

This paper describes an approach to designing and building Tcl extensions that can be flexibly and dynamically changed using either Tcl or C. In particular, extensions having an object-based interface are considered. This extension approach seeks to avoid the “chasm” found in migrating code from Tcl to C as it matures by freely mixing Tcl and C to create an object’s subcommands. The approach di...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997